/* Copyright 2001,2002,2003 NAH6 BV
 * All Rights Reserved
 *
 *  $Header: /var/lib/cvs/secphone/ui/ce/CPhone.h,v 1.10 2003/11/21 12:39:24 itsme Exp $
 *
 *
 */


#if !defined(AFX_CPHONE_H__E0FA3375_CF33_4499_8766_DE327514B1EF__INCLUDED_)
#define AFX_CPHONE_H__E0FA3375_CF33_4499_8766_DE327514B1EF__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

//#ifndef __AFXWIN_H__
//  #error include 'stdafx.h' before including this file for PCH
//#endif
#include <afxwin.h>

#include "resource.h"       // main symbols

class UserdataHandler;
class DiffieHellmanHandler;
class SpipcHandler;
class UDCPinger;
class UDCAutoAnswer;
class PhoneHandler;
class CCPhoneDlg;
class CallProgressSignalling;
class PRNG;
class esrcAudioInput;
class ConfigManager;
class VolumeManager;
class ThreadMonitor;
class BatteryClass;

#ifdef _WIN32_WCE
class SpPimHandler;
class UDCLicenseHandler;
class RilClass;
#endif

/////////////////////////////////////////////////////////////////////////////
// CCPhoneApp:
// See CPhone.cpp for the implementation of this class
//

class CCPhoneApp : public CWinApp
{
public:
    CCPhoneApp();
    bool ParseCommandLine(TCHAR *cmdline);

    void RunReseedApp();

// Overrides
    // ClassWizard generated virtual function overrides
    //{{AFX_VIRTUAL(CCPhoneApp)
    public:
    virtual BOOL InitInstance();
    virtual BOOL InitApplication();
    //}}AFX_VIRTUAL

// Implementation

    //{{AFX_MSG(CCPhoneApp)
        // NOTE - the ClassWizard will add and remove member functions here.
        //    DO NOT EDIT what you see in these blocks of generated code !
    //}}AFX_MSG
    DECLARE_MESSAGE_MAP()



public:
    UserdataHandler *m_ud;
    DiffieHellmanHandler *m_dh;
    SpipcHandler *m_ipc;
    UDCPinger *m_pinger;
    CCPhoneDlg *m_dlg;
    PhoneHandler *m_phone;
    UDCAutoAnswer *m_aa;

    CallProgressSignalling *m_cptone;
    PRNG *m_rng;
    esrcAudioInput* m_audioinput;
    ConfigManager* m_cfgmgr;
    VolumeManager* m_volmgr;
    ThreadMonitor* m_threadmon;
    BatteryClass *m_batt;

#ifdef _WIN32_WCE
    RilClass *m_ril;
    UDCLicenseHandler *m_lic;
    SpPimHandler *m_pimhandler;

#endif
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft eMbedded Visual C++ will insert additional declarations immediately before the previous line.

extern CCPhoneApp theApp;

#endif // !defined(AFX_CPHONE_H__E0FA3375_CF33_4499_8766_DE327514B1EF__INCLUDED_)
